package com.jy.wms.dao;

import com.jy.wms.common.base.BaseDao;
import com.jy.wms.pojo.*;
import org.apache.ibatis.annotations.Param;
import java.util.List;

/**
 * @ClassName: WmsQualityInspectionListDetailedMapper.java
 * @Description: TODO(这里用一句话描述这个类的作用)
 * @Author Jane
 * @Date Mon Nov 06 14:48:22 CST 2017
 */
public interface WmsQualityInspectionListDetailedMapper extends BaseDao<WmsQualityInspectionListDetailed>{

    /**
     * 插入一条记录
     * @param entity 实体对象
     * @return int
     */
    public Integer baseInsert(@Param("WmsQualityInspectionListDetailed") WmsQualityInspectionListDetailed entity);

    /**
     * 插入一条记录（匹配有值的字段）
     * @param entity 实体对象
     * @return int
     */
    public Integer baseInsertSelective(@Param("WmsQualityInspectionListDetailed") WmsQualityInspectionListDetailed entity);

    /**
     * 删除（根据主键ID删除）
     * @param id 主键
     * @return int
     */
    public Integer baseDeleteByPrimaryKey(@Param("id") String id);

    /**
     * 删除（根据ID 批量删除）
     * @param idList 主键ID列表
     * @return int
     */
    public Integer baseDeleteBathPrimaryKeys(@Param("list") List<String> idList);


    /**
     * 分页查询
     * @param entity 实体
     * @return List<WmsQualityInspectionListDetailed>
     */
    public List<WmsQualityInspectionListDetailed>  baseSelectPage(@Param("WmsQualityInspectionListDetailed") WmsQualityInspectionListDetailed entity);
    /**
     * 查询（根据质检单ID列表查询）_Jane
     * @param sszjdid 实体
     * @return List<WmsQualityInspectionListDetailed>
     */
    public List<WmsQualityInspectionListDetailed>  baseSelectMxBySszjdid(@Param("sszjdid") String sszjdid);
    /**
     * 查询（根据主键ID查询）
     * @param id 主键ID
     * @return User
     */
    public WmsQualityInspectionListDetailed  baseSelectByPrimaryKey(@Param("id") String id);

    /**
     * 查询（根据ID 批量查询）
     * @param idList 主键ID列表
     * @return list
     */
    public Integer baseSelectBathPrimaryKeys(@Param("list") List<WmsQualityInspectionListDetailed> idList);

    /**
     *修改 （匹配有值的字段）
     * @param entity 主键ID列表
     * @return int
     */
    public Integer baseUpdateByPrimaryKeySelective(@Param("WmsQualityInspectionListDetailed") WmsQualityInspectionListDetailed entity);

    /**
     *修改（根据主键ID修改）
     * @param entity 主键ID列表
     * @return int
     */
    public Integer baseUpdateByPrimaryKey(@Param("WmsQualityInspectionListDetailed") WmsQualityInspectionListDetailed entity);
    /**
     *修改状态和样品数量_Jane
     * @param entity  质检情况集合
     * @return int
     */
    public Integer baseUpdateYpslByPrimaryKeySelective(@Param("WmsQualityInspectionListDetailed") WmsQualityInspectionListDetailed entity);
    /**
     *修改质检单的状态和质检人_Jane
     * @param entity  质检情况集合
     * @return int
     */
    public Integer baseUpdateZjdztByPrimaryKeySelective( @Param("WmsQualityInspectionList")WmsQualityInspectionList entity);
    /**
     *根据质检单ID查询明细_Jane
     * @param sszjdid  质检单ID
     * @return int
     */
    public List<WmsQualityInspectionListDetailed> baseSelectBySszjdid( @Param("sszjdid") String sszjdid);
    /**
     *修改ASN明细质检状态_Jane
     * @param entity  ASN明细
     * @return int
     */
    public Integer baseUpdateASNMXByPrimaryKeySelective(@Param("WmsEstimatedArrivalOrderDetailed")WmsEstimatedArrivalOrderDetailed entity);
    /**
     *查询ASN明细详细信息_Jane
     * @param ssyqdid  ASN单据ID
     * @return int
     */
    public List<WmsEstimatedArrivalOrderDetailed> baseSelectASNMXByPrimaryKey(@Param("ssyqdid") String ssyqdid);
    /**
     *修改ASN单据质检状态_Jane
     * @param entity  ASN单据信息
     * @return int
     */
    public Integer baseUpdateASNZJZTByPrimaryKeySelective(@Param("WmsEstimatedArrivalOrder")WmsEstimatedArrivalOrder entity);
    /**
     *根据质检单ID查询质检明细_Jane
     * @param sszjdid  质检单ID
     * @return int
     */
    public List<WmsQualityInspectionListDetailed> baseSelectByZjdid(@Param("sszjdid") String sszjdid);
    /**
     *查询库存信息添加PDA任务明细表_Jane
     * @param sszjdid  质检单ID
     * @return int
     */
    public  List<WmsQualityInspectionListDetailed> seachDetailedByZjdid(@Param("sszjdid") String sszjdid);
    /**
     *查询PO明细的总合格数量_Jane
     * @param dycgmxid  对应PO明细Id
     * @return int
     */
    public Integer seachHgslByDycgmxid(@Param("dycgmxid") String dycgmxid);
    /**
     * 查询PO明细的预期数量_Jane
     * @param dycgmxid  对应PO明细Id
     * @return int
     */
    public WmsPurchaseOrderDetailed seachPoyqslByDycgmxid(@Param("dycgmxid") String dycgmxid);
    /**
     * 更新Po明细的合格率_Jane
     * @param entity  对应PO明细
     * @return int
     */
    public Integer updateHglByDycgmxid(@Param("WmsPurchaseOrderDetailed") WmsPurchaseOrderDetailed entity);
}
